home *** CD-ROM | disk | FTP | other *** search
/ C/C++ Users Group Library 1996 July / C-C++ Users Group Library July 1996.iso / listings / v_08_12 / 8n12035b < prev    next >
Text File  |  1990-10-16  |  745b  |  24 lines

  1.  
  2.  
  3.         /*          file mfp_macs.h          */
  4.  
  5.         /* M A C R O   D E F I N I T I O N S */
  6.  
  7.         /* cast operation for register references */
  8. #define REGVAL(x)               (*(unsigned char *)(x))
  9.  
  10.         /* create bit mask for one bit on/off */
  11. #define BITON_MASK(bitnum)      (1 << (bitnum))
  12. #define BITOFF_MASK(bitnum)     (~(1 << (bitnum)))
  13.  
  14.         /* use given mask to set/clear bits in given byte */
  15. #define SET_BITS(byte,mask)     REGVAL(byte) |= (mask)
  16. #define CLR_BITS(byte,mask)     REGVAL(byte) &= (mask)
  17.  
  18.         /* set/clear given bit number in byte */
  19. #define BIT_SET(byte,bitnum)    REGVAL(byte) |= (BITON_MASK(bitnum))
  20. #define BIT_CLR(byte,bitnum)    REGVAL(byte) &= (BITOFF_MASK(bitnum))
  21.  
  22.  
  23.  
  24.